{"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"name":"Exercise 7 - Answer.ipynb","version":"0.3.2","provenance":[{"file_id":"https://github.com/lmoroney/dlaicourse/blob/master/Course%202%20-%20Part%206%20-%20Lesson%203%20-%20Notebook.ipynb","timestamp":1553613150204}],"collapsed_sections":[]},"kernelspec":{"display_name":"Python 2","name":"python2"},"accelerator":"GPU"},"cells":[{"metadata":{"id":"lbFmQdsZs5eW","colab_type":"code","colab":{}},"cell_type":"code","source":["# Import all the necessary files!\n","import os\n","import tensorflow as tf\n","from tensorflow.keras import layers\n","from tensorflow.keras import Model"],"execution_count":0,"outputs":[]},{"metadata":{"colab_type":"code","id":"1xJZ5glPPCRz","colab":{}},"cell_type":"code","source":["# Download the inception v3 weights\n","!wget --no-check-certificate \\\n","    https://storage.googleapis.com/mledu-datasets/inception_v3_weights_tf_dim_ordering_tf_kernels_notop.h5 \\\n","    -O /tmp/inception_v3_weights_tf_dim_ordering_tf_kernels_notop.h5\n","\n","# Import the inception model  \n","from tensorflow.keras.applications.inception_v3 import InceptionV3\n","\n","# Create an instance of the inception model from the local pre-trained weights\n","local_weights_file = '/tmp/inception_v3_weights_tf_dim_ordering_tf_kernels_notop.h5'\n","\n","pre_trained_model = InceptionV3(input_shape = (150, 150, 3), \n","                                include_top = False, \n","                                weights = None)\n","\n","pre_trained_model.load_weights(local_weights_file)\n","\n","# Make all the layers in the pre-trained model non-trainable\n","for layer in pre_trained_model.layers:\n","  layer.trainable = False\n","  \n","# Print the model summary\n","pre_trained_model.summary()\n","\n","# Expected Output is extremely large, but should end with:\n","\n","#batch_normalization_v1_281 (Bat (None, 3, 3, 192)    576         conv2d_281[0][0]                 \n","#__________________________________________________________________________________________________\n","#activation_273 (Activation)     (None, 3, 3, 320)    0           batch_normalization_v1_273[0][0] \n","#__________________________________________________________________________________________________\n","#mixed9_1 (Concatenate)          (None, 3, 3, 768)    0           activation_275[0][0]             \n","#                                                                 activation_276[0][0]             \n","#__________________________________________________________________________________________________\n","#concatenate_5 (Concatenate)     (None, 3, 3, 768)    0           activation_279[0][0]             \n","#                                                                 activation_280[0][0]             \n","#__________________________________________________________________________________________________\n","#activation_281 (Activation)     (None, 3, 3, 192)    0           batch_normalization_v1_281[0][0] \n","#__________________________________________________________________________________________________\n","#mixed10 (Concatenate)           (None, 3, 3, 2048)   0           activation_273[0][0]             \n","#                                                                 mixed9_1[0][0]                   \n","#                                                                 concatenate_5[0][0]              \n","#                                                                 activation_281[0][0]             \n","#==================================================================================================\n","#Total params: 21,802,784\n","#Trainable params: 0\n","#Non-trainable params: 21,802,784"],"execution_count":0,"outputs":[]},{"metadata":{"id":"CFsUlwdfs_wg","colab_type":"code","colab":{"base_uri":"https://localhost:8080/","height":34},"outputId":"7ae7559e-8498-4617-f8ec-69c0e1684c23","executionInfo":{"status":"ok","timestamp":1553615733660,"user_tz":420,"elapsed":539,"user":{"displayName":"Laurence Moroney","photoUrl":"https://lh4.googleusercontent.com/-wUzpekukCVw/AAAAAAAAAAI/AAAAAAAAAHw/pQPstOOJqqE/s64/photo.jpg","userId":"17858265307580721507"}}},"cell_type":"code","source":["last_layer = pre_trained_model.get_layer('mixed7')\n","print('last layer output shape: ', last_layer.output_shape)\n","last_output = last_layer.output\n","\n","# Expected Output:\n","# ('last layer output shape: ', (None, 7, 7, 768))"],"execution_count":26,"outputs":[{"output_type":"stream","text":["('last layer output shape: ', (None, 7, 7, 768))\n"],"name":"stdout"}]},{"metadata":{"id":"-bsWZWp5oMq9","colab_type":"code","colab":{}},"cell_type":"code","source":["# Define a Callback class that stops training once accuracy reaches 99.9%\n","class myCallback(tf.keras.callbacks.Callback):\n","  def on_epoch_end(self, epoch, logs={}):\n","    if(logs.get('acc')>0.999):\n","      print(\"\\nReached 99.9% accuracy so cancelling training!\")\n","      self.model.stop_training = True\n","\n","      "],"execution_count":0,"outputs":[]},{"metadata":{"colab_type":"code","id":"BMXb913pbvFg","colab":{}},"cell_type":"code","source":["from tensorflow.keras.optimizers import RMSprop\n","\n","# Flatten the output layer to 1 dimension\n","x = layers.Flatten()(last_output)\n","# Add a fully connected layer with 1,024 hidden units and ReLU activation\n","x = layers.Dense(1024, activation='relu')(x)\n","# Add a dropout rate of 0.2\n","x = layers.Dropout(0.2)(x)                  \n","# Add a final sigmoid layer for classification\n","x = layers.Dense  (1, activation='sigmoid')(x)           \n","\n","model = Model( pre_trained_model.input, x) \n","\n","model.compile(optimizer = RMSprop(lr=0.0001), \n","              loss = 'binary_crossentropy', \n","              metrics = ['acc'])\n","\n","model.summary()\n","\n","# Expected output will be large. Last few lines should be:\n","\n","# mixed7 (Concatenate)            (None, 7, 7, 768)    0           activation_248[0][0]             \n","#                                                                  activation_251[0][0]             \n","#                                                                  activation_256[0][0]             \n","#                                                                  activation_257[0][0]             \n","# __________________________________________________________________________________________________\n","# flatten_4 (Flatten)             (None, 37632)        0           mixed7[0][0]                     \n","# __________________________________________________________________________________________________\n","# dense_8 (Dense)                 (None, 1024)         38536192    flatten_4[0][0]                  \n","# __________________________________________________________________________________________________\n","# dropout_4 (Dropout)             (None, 1024)         0           dense_8[0][0]                    \n","# __________________________________________________________________________________________________\n","# dense_9 (Dense)                 (None, 1)            1025        dropout_4[0][0]                  \n","# ==================================================================================================\n","# Total params: 47,512,481\n","# Trainable params: 38,537,217\n","# Non-trainable params: 8,975,264\n"],"execution_count":0,"outputs":[]},{"metadata":{"id":"HrnL_IQ8knWA","colab_type":"code","colab":{"base_uri":"https://localhost:8080/","height":411},"outputId":"2f3aa781-bf9a-4dd7-b719-2c64f34d2fb8","executionInfo":{"status":"ok","timestamp":1553615906797,"user_tz":420,"elapsed":5420,"user":{"displayName":"Laurence Moroney","photoUrl":"https://lh4.googleusercontent.com/-wUzpekukCVw/AAAAAAAAAAI/AAAAAAAAAHw/pQPstOOJqqE/s64/photo.jpg","userId":"17858265307580721507"}}},"cell_type":"code","source":["# Get the Horse or Human dataset\n","!wget --no-check-certificate https://storage.googleapis.com/laurencemoroney-blog.appspot.com/horse-or-human.zip -O /tmp/horse-or-human.zip\n","\n","# Get the Horse or Human Validation dataset\n","!wget --no-check-certificate https://storage.googleapis.com/laurencemoroney-blog.appspot.com/validation-horse-or-human.zip -O /tmp/validation-horse-or-human.zip \n","  \n","from tensorflow.keras.preprocessing.image import ImageDataGenerator\n","\n","import os\n","import zipfile\n","\n","local_zip = '//tmp/horse-or-human.zip'\n","zip_ref = zipfile.ZipFile(local_zip, 'r')\n","zip_ref.extractall('/tmp/training')\n","zip_ref.close()\n","\n","local_zip = '//tmp/validation-horse-or-human.zip'\n","zip_ref = zipfile.ZipFile(local_zip, 'r')\n","zip_ref.extractall('/tmp/validation')\n","zip_ref.close()"],"execution_count":29,"outputs":[{"output_type":"stream","text":["--2019-03-26 15:58:22--  https://storage.googleapis.com/laurencemoroney-blog.appspot.com/horse-or-human.zip\n","Resolving storage.googleapis.com (storage.googleapis.com)... 74.125.141.128, 2607:f8b0:400c:c06::80\n","Connecting to storage.googleapis.com (storage.googleapis.com)|74.125.141.128|:443... connected.\n","HTTP request sent, awaiting response... 200 OK\n","Length: 149574867 (143M) [application/zip]\n","Saving to: ‘/tmp/horse-or-human.zip’\n","\n","/tmp/horse-or-human 100%[===================>] 142.65M   153MB/s    in 0.9s    \n","\n","2019-03-26 15:58:23 (153 MB/s) - ‘/tmp/horse-or-human.zip’ saved [149574867/149574867]\n","\n","--2019-03-26 15:58:24--  https://storage.googleapis.com/laurencemoroney-blog.appspot.com/validation-horse-or-human.zip\n","Resolving storage.googleapis.com (storage.googleapis.com)... 74.125.141.128, 2607:f8b0:400c:c06::80\n","Connecting to storage.googleapis.com (storage.googleapis.com)|74.125.141.128|:443... connected.\n","HTTP request sent, awaiting response... 200 OK\n","Length: 11480187 (11M) [application/zip]\n","Saving to: ‘/tmp/validation-horse-or-human.zip’\n","\n","/tmp/validation-hor 100%[===================>]  10.95M  55.6MB/s    in 0.2s    \n","\n","2019-03-26 15:58:24 (55.6 MB/s) - ‘/tmp/validation-horse-or-human.zip’ saved [11480187/11480187]\n","\n"],"name":"stdout"}]},{"metadata":{"id":"y9okX7_ovskI","colab_type":"code","colab":{"base_uri":"https://localhost:8080/","height":85},"outputId":"dee95cef-49c7-4f61-f912-395178b7ea71","executionInfo":{"status":"ok","timestamp":1553616469204,"user_tz":420,"elapsed":429,"user":{"displayName":"Laurence Moroney","photoUrl":"https://lh4.googleusercontent.com/-wUzpekukCVw/AAAAAAAAAAI/AAAAAAAAAHw/pQPstOOJqqE/s64/photo.jpg","userId":"17858265307580721507"}}},"cell_type":"code","source":["train_horses_dir = os.path.join(train_dir, 'horses') # Directory with our training horse pictures\n","train_humans_dir = os.path.join(train_dir, 'humans') # Directory with our training humans pictures\n","validation_horses_dir = os.path.join(validation_dir, 'horses') # Directory with our validation horse pictures\n","validation_humans_dir = os.path.join(validation_dir, 'humans')# Directory with our validation humanas pictures\n","\n","train_horses_fnames = os.listdir(train_horses_dir)\n","train_humans_fnames = os.listdir(train_humans_dir)\n","validation_horses_fnames = os.listdir(validation_horses_dir)\n","validation_humans_fnames = os.listdir(validation_humans_dir)\n","\n","print(len(train_horses_fnames))\n","print(len(train_humans_fnames))\n","print(len(validation_horses_fnames))\n","print(len(validation_humans_fnames))\n","\n","# Expected Output:\n","# 500\n","# 527\n","# 128\n","# 128"],"execution_count":32,"outputs":[{"output_type":"stream","text":["500\n","527\n","128\n","128\n"],"name":"stdout"}]},{"metadata":{"colab_type":"code","id":"O4s8HckqGlnb","outputId":"e581a4b2-2048-4a07-8560-d593f20cc72a","executionInfo":{"status":"ok","timestamp":1553616494697,"user_tz":420,"elapsed":576,"user":{"displayName":"Laurence Moroney","photoUrl":"https://lh4.googleusercontent.com/-wUzpekukCVw/AAAAAAAAAAI/AAAAAAAAAHw/pQPstOOJqqE/s64/photo.jpg","userId":"17858265307580721507"}},"colab":{"base_uri":"https://localhost:8080/","height":51}},"cell_type":"code","source":["# Define our example directories and files\n","train_dir = '/tmp/training'\n","validation_dir = '/tmp/validation'\n","\n","# Add our data-augmentation parameters to ImageDataGenerator\n","train_datagen = ImageDataGenerator(rescale = 1./255.,\n","                                   rotation_range = 40,\n","                                   width_shift_range = 0.2,\n","                                   height_shift_range = 0.2,\n","                                   shear_range = 0.2,\n","                                   zoom_range = 0.2,\n","                                   horizontal_flip = True)\n","\n","# Note that the validation data should not be augmented!\n","test_datagen = ImageDataGenerator( rescale = 1.0/255. )\n","\n","# Flow training images in batches of 20 using train_datagen generator\n","train_generator = train_datagen.flow_from_directory(train_dir,\n","                                                    batch_size = 20,\n","                                                    class_mode = 'binary', \n","                                                    target_size = (150, 150))     \n","\n","# Flow validation images in batches of 20 using test_datagen generator\n","validation_generator =  test_datagen.flow_from_directory( validation_dir,\n","                                                          batch_size  = 20,\n","                                                          class_mode  = 'binary', \n","                                                          target_size = (150, 150))\n","\n","# Expected Output:\n","# Found 1027 images belonging to 2 classes.\n","# Found 256 images belonging to 2 classes."],"execution_count":33,"outputs":[{"output_type":"stream","text":["Found 1027 images belonging to 2 classes.\n","Found 256 images belonging to 2 classes.\n"],"name":"stdout"}]},{"metadata":{"colab_type":"code","id":"Blhq2MAUeyGA","outputId":"777a1c52-35d0-4f0f-dee6-c466a2a9e5b5","executionInfo":{"status":"ok","timestamp":1553617616235,"user_tz":420,"elapsed":1052234,"user":{"displayName":"Laurence Moroney","photoUrl":"https://lh4.googleusercontent.com/-wUzpekukCVw/AAAAAAAAAAI/AAAAAAAAAHw/pQPstOOJqqE/s64/photo.jpg","userId":"17858265307580721507"}},"colab":{"base_uri":"https://localhost:8080/","height":3590}},"cell_type":"code","source":["# Run this and see how many epochs it should take before the callback\n","# fires, and stops training at 99.9% accuracy\n","# (It should take less than 100 epochs)\n","callbacks = myCallback()\n","history = model.fit_generator(\n","            train_generator,\n","            validation_data = validation_generator,\n","            steps_per_epoch = 100,\n","            epochs = 100,\n","            validation_steps = 50,\n","            verbose = 2,\n","            callbacks=[callbacks])"],"execution_count":34,"outputs":[{"output_type":"stream","text":["Epoch 1/100\n","13/13 [==============================] - 3s 262ms/step - loss: 0.0030 - acc: 1.0000\n"," - 17s - loss: 0.2578 - acc: 0.8987 - val_loss: 0.0030 - val_acc: 1.0000\n","Epoch 2/100\n","13/13 [==============================] - 2s 144ms/step - loss: 0.0015 - acc: 1.0000\n"," - 14s - loss: 0.1260 - acc: 0.9591 - val_loss: 0.0015 - val_acc: 1.0000\n","Epoch 3/100\n","13/13 [==============================] - 2s 146ms/step - loss: 0.0238 - acc: 0.9883\n"," - 15s - loss: 0.0757 - acc: 0.9640 - val_loss: 0.0238 - val_acc: 0.9883\n","Epoch 4/100\n","13/13 [==============================] - 2s 147ms/step - loss: 2.9810e-04 - acc: 1.0000\n"," - 15s - loss: 0.0805 - acc: 0.9737 - val_loss: 2.9810e-04 - val_acc: 1.0000\n","Epoch 5/100\n","13/13 [==============================] - 2s 144ms/step - loss: 0.0057 - acc: 0.9961\n"," - 15s - loss: 0.0448 - acc: 0.9864 - val_loss: 0.0057 - val_acc: 0.9961\n","Epoch 6/100\n","13/13 [==============================] - 2s 142ms/step - loss: 0.1663 - acc: 0.9688\n"," - 15s - loss: 0.0480 - acc: 0.9844 - val_loss: 0.1663 - val_acc: 0.9688\n","Epoch 7/100\n","13/13 [==============================] - 2s 143ms/step - loss: 0.0099 - acc: 0.9961\n"," - 15s - loss: 0.0460 - acc: 0.9844 - val_loss: 0.0099 - val_acc: 0.9961\n","Epoch 8/100\n","13/13 [==============================] - 2s 144ms/step - loss: 0.0609 - acc: 0.9883\n"," - 15s - loss: 0.0327 - acc: 0.9912 - val_loss: 0.0609 - val_acc: 0.9883\n","Epoch 9/100\n","13/13 [==============================] - 2s 147ms/step - loss: 0.0260 - acc: 0.9922\n"," - 15s - loss: 0.0434 - acc: 0.9825 - val_loss: 0.0260 - val_acc: 0.9922\n","Epoch 10/100\n","13/13 [==============================] - 2s 146ms/step - loss: 0.0502 - acc: 0.9883\n"," - 15s - loss: 0.0237 - acc: 0.9932 - val_loss: 0.0502 - val_acc: 0.9883\n","Epoch 11/100\n","13/13 [==============================] - 2s 146ms/step - loss: 0.0959 - acc: 0.9883\n"," - 15s - loss: 0.0587 - acc: 0.9796 - val_loss: 0.0959 - val_acc: 0.9883\n","Epoch 12/100\n","13/13 [==============================] - 2s 147ms/step - loss: 0.1125 - acc: 0.9883\n"," - 15s - loss: 0.0211 - acc: 0.9912 - val_loss: 0.1125 - val_acc: 0.9883\n","Epoch 13/100\n","13/13 [==============================] - 2s 143ms/step - loss: 0.2694 - acc: 0.9570\n"," - 15s - loss: 0.0463 - acc: 0.9854 - val_loss: 0.2694 - val_acc: 0.9570\n","Epoch 14/100\n","13/13 [==============================] - 2s 150ms/step - loss: 0.4562 - acc: 0.9531\n"," - 15s - loss: 0.0365 - acc: 0.9864 - val_loss: 0.4562 - val_acc: 0.9531\n","Epoch 15/100\n","13/13 [==============================] - 2s 147ms/step - loss: 0.1317 - acc: 0.9805\n"," - 15s - loss: 0.0220 - acc: 0.9893 - val_loss: 0.1317 - val_acc: 0.9805\n","Epoch 16/100\n","13/13 [==============================] - 2s 145ms/step - loss: 0.1389 - acc: 0.9844\n"," - 15s - loss: 0.0317 - acc: 0.9903 - val_loss: 0.1389 - val_acc: 0.9844\n","Epoch 17/100\n","13/13 [==============================] - 2s 146ms/step - loss: 0.0720 - acc: 0.9844\n"," - 15s - loss: 0.0545 - acc: 0.9854 - val_loss: 0.0720 - val_acc: 0.9844\n","Epoch 18/100\n","13/13 [==============================] - 2s 147ms/step - loss: 0.0197 - acc: 0.9922\n"," - 15s - loss: 0.0156 - acc: 0.9951 - val_loss: 0.0197 - val_acc: 0.9922\n","Epoch 19/100\n","13/13 [==============================] - 2s 146ms/step - loss: 0.0529 - acc: 0.9922\n"," - 15s - loss: 0.0138 - acc: 0.9951 - val_loss: 0.0529 - val_acc: 0.9922\n","Epoch 20/100\n","13/13 [==============================] - 2s 151ms/step - loss: 0.0437 - acc: 0.9883\n"," - 15s - loss: 0.0092 - acc: 0.9971 - val_loss: 0.0437 - val_acc: 0.9883\n","Epoch 21/100\n","13/13 [==============================] - 2s 146ms/step - loss: 0.4589 - acc: 0.9414\n"," - 15s - loss: 0.0281 - acc: 0.9912 - val_loss: 0.4589 - val_acc: 0.9414\n","Epoch 22/100\n","13/13 [==============================] - 2s 147ms/step - loss: 0.2179 - acc: 0.9727\n"," - 15s - loss: 0.0200 - acc: 0.9893 - val_loss: 0.2179 - val_acc: 0.9727\n","Epoch 23/100\n","13/13 [==============================] - 2s 145ms/step - loss: 0.1490 - acc: 0.9844\n"," - 15s - loss: 0.0489 - acc: 0.9903 - val_loss: 0.1490 - val_acc: 0.9844\n","Epoch 24/100\n","13/13 [==============================] - 2s 141ms/step - loss: 0.2060 - acc: 0.9766\n"," - 15s - loss: 0.0181 - acc: 0.9932 - val_loss: 0.2060 - val_acc: 0.9766\n","Epoch 25/100\n","13/13 [==============================] - 2s 144ms/step - loss: 0.1785 - acc: 0.9805\n"," - 15s - loss: 0.0137 - acc: 0.9951 - val_loss: 0.1785 - val_acc: 0.9805\n","Epoch 26/100\n","13/13 [==============================] - 2s 144ms/step - loss: 0.0258 - acc: 0.9922\n"," - 15s - loss: 0.0175 - acc: 0.9951 - val_loss: 0.0258 - val_acc: 0.9922\n","Epoch 27/100\n","13/13 [==============================] - 2s 146ms/step - loss: 0.0623 - acc: 0.9883\n"," - 15s - loss: 0.0279 - acc: 0.9942 - val_loss: 0.0623 - val_acc: 0.9883\n","Epoch 28/100\n","13/13 [==============================] - 2s 146ms/step - loss: 0.1110 - acc: 0.9844\n"," - 15s - loss: 0.0200 - acc: 0.9942 - val_loss: 0.1110 - val_acc: 0.9844\n","Epoch 29/100\n","13/13 [==============================] - 2s 145ms/step - loss: 0.0566 - acc: 0.9883\n"," - 15s - loss: 0.0039 - acc: 0.9971 - val_loss: 0.0566 - val_acc: 0.9883\n","Epoch 30/100\n","13/13 [==============================] - 2s 146ms/step - loss: 0.0114 - acc: 0.9961\n"," - 15s - loss: 0.0343 - acc: 0.9903 - val_loss: 0.0114 - val_acc: 0.9961\n","Epoch 31/100\n","13/13 [==============================] - 2s 145ms/step - loss: 0.3286 - acc: 0.9648\n"," - 15s - loss: 0.0209 - acc: 0.9922 - val_loss: 0.3286 - val_acc: 0.9648\n","Epoch 32/100\n","13/13 [==============================] - 2s 146ms/step - loss: 0.0234 - acc: 0.9883\n"," - 15s - loss: 0.0195 - acc: 0.9922 - val_loss: 0.0234 - val_acc: 0.9883\n","Epoch 33/100\n","13/13 [==============================] - 2s 148ms/step - loss: 0.1478 - acc: 0.9844\n"," - 15s - loss: 0.0251 - acc: 0.9922 - val_loss: 0.1478 - val_acc: 0.9844\n","Epoch 34/100\n","13/13 [==============================] - 2s 141ms/step - loss: 0.1752 - acc: 0.9766\n"," - 15s - loss: 0.0262 - acc: 0.9922 - val_loss: 0.1752 - val_acc: 0.9766\n","Epoch 35/100\n","13/13 [==============================] - 2s 150ms/step - loss: 0.3704 - acc: 0.9648\n"," - 15s - loss: 0.0181 - acc: 0.9922 - val_loss: 0.3704 - val_acc: 0.9648\n","Epoch 36/100\n","13/13 [==============================] - 2s 149ms/step - loss: 0.0575 - acc: 0.9883\n"," - 15s - loss: 0.0038 - acc: 0.9981 - val_loss: 0.0575 - val_acc: 0.9883\n","Epoch 37/100\n","13/13 [==============================] - 2s 153ms/step - loss: 0.3265 - acc: 0.9727\n"," - 15s - loss: 0.0094 - acc: 0.9971 - val_loss: 0.3265 - val_acc: 0.9727\n","Epoch 38/100\n","13/13 [==============================] - 2s 159ms/step - loss: 0.4095 - acc: 0.9570\n"," - 15s - loss: 0.0215 - acc: 0.9951 - val_loss: 0.4095 - val_acc: 0.9570\n","Epoch 39/100\n","13/13 [==============================] - 2s 159ms/step - loss: 0.2819 - acc: 0.9727\n"," - 15s - loss: 0.0218 - acc: 0.9951 - val_loss: 0.2819 - val_acc: 0.9727\n","Epoch 40/100\n","13/13 [==============================] - 2s 164ms/step - loss: 0.2788 - acc: 0.9727\n"," - 15s - loss: 0.0102 - acc: 0.9971 - val_loss: 0.2788 - val_acc: 0.9727\n","Epoch 41/100\n","13/13 [==============================] - 2s 149ms/step - loss: 0.4275 - acc: 0.9609\n"," - 15s - loss: 0.0080 - acc: 0.9951 - val_loss: 0.4275 - val_acc: 0.9609\n","Epoch 42/100\n","13/13 [==============================] - 2s 146ms/step - loss: 0.3639 - acc: 0.9609\n"," - 15s - loss: 0.0344 - acc: 0.9922 - val_loss: 0.3639 - val_acc: 0.9609\n","Epoch 43/100\n","13/13 [==============================] - 2s 149ms/step - loss: 0.3545 - acc: 0.9609\n"," - 15s - loss: 0.0116 - acc: 0.9961 - val_loss: 0.3545 - val_acc: 0.9609\n","Epoch 44/100\n","13/13 [==============================] - 2s 148ms/step - loss: 0.4563 - acc: 0.9531\n"," - 15s - loss: 0.0066 - acc: 0.9971 - val_loss: 0.4563 - val_acc: 0.9531\n","Epoch 45/100\n","13/13 [==============================] - 2s 148ms/step - loss: 0.2358 - acc: 0.9766\n"," - 15s - loss: 0.0122 - acc: 0.9942 - val_loss: 0.2358 - val_acc: 0.9766\n","Epoch 46/100\n","13/13 [==============================] - 2s 151ms/step - loss: 0.2340 - acc: 0.9688\n"," - 15s - loss: 0.0320 - acc: 0.9951 - val_loss: 0.2340 - val_acc: 0.9688\n","Epoch 47/100\n","13/13 [==============================] - 2s 149ms/step - loss: 0.3101 - acc: 0.9648\n"," - 15s - loss: 0.0174 - acc: 0.9942 - val_loss: 0.3101 - val_acc: 0.9648\n","Epoch 48/100\n","13/13 [==============================] - 2s 148ms/step - loss: 0.3406 - acc: 0.9609\n"," - 15s - loss: 0.0100 - acc: 0.9971 - val_loss: 0.3406 - val_acc: 0.9609\n","Epoch 49/100\n","13/13 [==============================] - 2s 150ms/step - loss: 0.3289 - acc: 0.9609\n"," - 15s - loss: 0.0151 - acc: 0.9961 - val_loss: 0.3289 - val_acc: 0.9609\n","Epoch 50/100\n","13/13 [==============================] - 2s 148ms/step - loss: 0.3019 - acc: 0.9609\n"," - 15s - loss: 0.0058 - acc: 0.9981 - val_loss: 0.3019 - val_acc: 0.9609\n","Epoch 51/100\n","13/13 [==============================] - 2s 146ms/step - loss: 0.6211 - acc: 0.9492\n"," - 15s - loss: 0.0141 - acc: 0.9971 - val_loss: 0.6211 - val_acc: 0.9492\n","Epoch 52/100\n","13/13 [==============================] - 2s 151ms/step - loss: 0.2269 - acc: 0.9766\n"," - 15s - loss: 0.0432 - acc: 0.9912 - val_loss: 0.2269 - val_acc: 0.9766\n","Epoch 53/100\n","13/13 [==============================] - 2s 149ms/step - loss: 0.2337 - acc: 0.9648\n"," - 15s - loss: 0.0216 - acc: 0.9942 - val_loss: 0.2337 - val_acc: 0.9648\n","Epoch 54/100\n","13/13 [==============================] - 2s 150ms/step - loss: 0.4217 - acc: 0.9531\n"," - 15s - loss: 0.0060 - acc: 0.9981 - val_loss: 0.4217 - val_acc: 0.9531\n","Epoch 55/100\n","13/13 [==============================] - 2s 146ms/step - loss: 0.5074 - acc: 0.9531\n"," - 15s - loss: 0.0146 - acc: 0.9922 - val_loss: 0.5074 - val_acc: 0.9531\n","Epoch 56/100\n","13/13 [==============================] - 2s 144ms/step - loss: 0.5438 - acc: 0.9531\n"," - 15s - loss: 0.0072 - acc: 0.9981 - val_loss: 0.5438 - val_acc: 0.9531\n","Epoch 57/100\n","13/13 [==============================] - 2s 148ms/step - loss: 0.3292 - acc: 0.9609\n"," - 15s - loss: 0.0331 - acc: 0.9922 - val_loss: 0.3292 - val_acc: 0.9609\n","Epoch 58/100\n","13/13 [==============================] - 2s 149ms/step - loss: 0.7246 - acc: 0.9453\n"," - 15s - loss: 0.0188 - acc: 0.9961 - val_loss: 0.7246 - val_acc: 0.9453\n","Epoch 59/100\n","13/13 [==============================] - 2s 149ms/step - loss: 0.7312 - acc: 0.9453\n"," - 15s - loss: 0.0355 - acc: 0.9922 - val_loss: 0.7312 - val_acc: 0.9453\n","Epoch 60/100\n","13/13 [==============================] - 2s 146ms/step - loss: 0.4679 - acc: 0.9492\n"," - 15s - loss: 0.0325 - acc: 0.9883 - val_loss: 0.4679 - val_acc: 0.9492\n","Epoch 61/100\n","13/13 [==============================] - 2s 148ms/step - loss: 0.7518 - acc: 0.9453\n"," - 15s - loss: 0.0203 - acc: 0.9951 - val_loss: 0.7518 - val_acc: 0.9453\n","Epoch 62/100\n","13/13 [==============================] - 2s 147ms/step - loss: 0.5631 - acc: 0.9492\n"," - 15s - loss: 0.0086 - acc: 0.9971 - val_loss: 0.5631 - val_acc: 0.9492\n","Epoch 63/100\n","13/13 [==============================] - 2s 146ms/step - loss: 0.4888 - acc: 0.9492\n"," - 15s - loss: 0.0148 - acc: 0.9981 - val_loss: 0.4888 - val_acc: 0.9492\n","Epoch 64/100\n","13/13 [==============================] - 2s 157ms/step - loss: 0.5083 - acc: 0.9492\n"," - 15s - loss: 0.0093 - acc: 0.9961 - val_loss: 0.5083 - val_acc: 0.9492\n","Epoch 65/100\n","13/13 [==============================] - 2s 161ms/step - loss: 0.3420 - acc: 0.9609\n"," - 15s - loss: 0.0407 - acc: 0.9932 - val_loss: 0.3420 - val_acc: 0.9609\n","Epoch 66/100\n","13/13 [==============================] - 2s 156ms/step - loss: 0.4816 - acc: 0.9492\n"," - 15s - loss: 0.0147 - acc: 0.9961 - val_loss: 0.4816 - val_acc: 0.9492\n","Epoch 67/100\n","13/13 [==============================] - 2s 158ms/step - loss: 0.4060 - acc: 0.9531\n"," - 15s - loss: 0.0065 - acc: 0.9981 - val_loss: 0.4060 - val_acc: 0.9531\n","Epoch 68/100\n","13/13 [==============================] - 2s 161ms/step - loss: 0.3314 - acc: 0.9609\n"," - 15s - loss: 0.0212 - acc: 0.9922 - val_loss: 0.3314 - val_acc: 0.9609\n","Epoch 69/100\n","13/13 [==============================] - 2s 148ms/step - loss: 0.6393 - acc: 0.9492\n","\n","Reached 99.9% accuracy so cancelling training!\n"," - 15s - loss: 0.0027 - acc: 0.9990 - val_loss: 0.6393 - val_acc: 0.9492\n"],"name":"stdout"}]},{"metadata":{"id":"C2Fp6Se9rKuL","colab_type":"code","outputId":"ce9be467-3df8-4158-f610-49f3eb1fe012","executionInfo":{"status":"ok","timestamp":1553617813506,"user_tz":420,"elapsed":819,"user":{"displayName":"Laurence Moroney","photoUrl":"https://lh4.googleusercontent.com/-wUzpekukCVw/AAAAAAAAAAI/AAAAAAAAAHw/pQPstOOJqqE/s64/photo.jpg","userId":"17858265307580721507"}},"colab":{"base_uri":"https://localhost:8080/","height":379}},"cell_type":"code","source":["import matplotlib.pyplot as plt\n","acc = history.history['acc']\n","val_acc = history.history['val_acc']\n","loss = history.history['loss']\n","val_loss = history.history['val_loss']\n","\n","epochs = range(len(acc))\n","\n","plt.plot(epochs, acc, 'r', label='Training accuracy')\n","plt.plot(epochs, val_acc, 'b', label='Validation accuracy')\n","plt.title('Training and validation accuracy')\n","plt.legend(loc=0)\n","plt.figure()\n","\n","\n","plt.show()"],"execution_count":35,"outputs":[{"output_type":"display_data","data":{"image/png":"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\nJEtSegAAAABJRU5ErkJggg==\n","text/plain":["<Figure size 576x396 with 1 Axes>"]},"metadata":{"tags":[]}},{"output_type":"display_data","data":{"text/plain":["<Figure size 576x396 with 0 Axes>"]},"metadata":{"tags":[]}}]}]}